Skip to content

fix(core): stop pruning pinned route leaves on suffixed-catalog providers (#985) - #986

Merged
dezren39 merged 1 commit into
mainfrom
route-variant-fix
Oct 30, 2026
Merged

dezren39 merged 1 commit into
mainfrom
route-variant-fix

Conversation

@dezren39

@dezren39 dezren39 commented Oct 30, 2026 •

Copy link
Copy Markdown

Fixes #985.

What was wrong

Route expansion pruned any leaf whose pinned/inherited variant was not natively enumerated on the definition-stage Model.Info. The proxy providers (antigravity-agy, antigravity-ls, opendesign) carry no variant list at that stage — their catalogs expose effort levels as suffixed model ids (gemini-4-argon-high, claude-sonnet-5-5-high). Result, verified against the live server's expanded target lists and the route_attempt ledger: workhorse-primary lost its direct Argon leaf and its whole Sonnet contribution; specialist/summit/speed/scout lost the same providers' leaves whenever a variant rode along, while unpinned standalone routes kept them and direct session pins worked.

The fix

  • expand(): a variant the door's catalog exposes as a suffixed model id counts as producible, on par with a native variant or a target remap. A variant with no native, remapped, or suffixed evidence still prunes (existing spec tests unchanged).
  • retargetDefinition(): the merge now also refreshes definition-stage entries from the editor by their own ids. The editor does not enumerate every model it holds (it lists the proxy catalog's suffixed ids, not the base models), so those entries kept their pre-transform shape — no variants — and re-expansion judged targets against them. This completes the documented "definition ids union current model ids" semantics.

Tests

New regression tests in model-routes-expand.test.ts (direct pin, nested inheritance, still-prunes) and model-route-transform-models.test.ts (retarget editor refresh). Full route family: 221 pass; governance/session-model: 17 pass; tsgo typecheck clean.


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.

…ders (#985)

Route expansion pruned any leaf whose pinned or inherited variant was not
natively enumerated on the definition-stage model info. Proxy providers
(Antigravity, Open Design) carry no variant list at that stage — their
catalogs expose effort levels as suffixed model ids (gemini-4-argon-high,
claude-sonnet-5-5-high) — so every variant-pinned reference to them
silently expanded to zero: workhorse routes never attempted the Argon or
Sonnet leaves even though direct pins worked.

Two repairs:
- expand(): a variant the door's catalog exposes as a suffixed model id
  counts as producible, like a native variant or a remap. A variant with
  no native, remapped, or suffixed evidence still prunes.
- retargetDefinition(): refresh definition-stage entries from the editor
  by their own ids, completing the documented definition-ids-union-current
  semantics for models the editor does not enumerate (it lists the proxy
  catalog's suffixed ids, not the base models transforms complete later).

Regression tests cover the direct pin, the nested-route inheritance, the
still-prunes case, and the retarget editor refresh.
@coderabbitai

coderabbitai Bot commented Oct 30, 2026

Copy link
Copy Markdown

Warning

Review limit reached

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Next included review available in 28 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

Learn how review limits work.

Review configuration:

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 447535c3-7827-4aff-91cb-4df97f4ecf8e
Commits

Reviewing files that changed from the base of the PR and between 7b8d55b and 03245ec.

Files selected for processing: 3
  • packages/core/src/config/plugin/model-routes.ts
  • packages/core/test/model-route-transform-models.test.ts
  • packages/core/test/model-routes-expand.test.ts
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 30, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-30T12:34:55.159325Z 03245ec PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@dezren39
dezren39 merged commit 56321bb into main Oct 30, 2026
1 check passed
dezren39 added a commit to developing-today/code that referenced this pull request Oct 30, 2026
Picks up developing-today-forks/opencode#986: variant-pinned route leaves on
suffixed-catalog providers (Antigravity Argon/Sonnet, Open Design doors)
no longer expand to zero, so the workhorse routes can finally attempt
them. Lock-only change.
dezren39 added a commit to developing-today/code that referenced this pull request Oct 30, 2026
The first pass resolved the floating input through a stale fetcher
cache and landed on an older rev. Pin to 56321bbd (the merge of
developing-today-forks/opencode#986) explicitly. Net diff against main is
exactly one node: the root opencode input ffb33f2d -> 56321bbd.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

router: antigravity-agy / antigravity-ls leaves are never selected by routes (silent zero-expansion)

1 participant